home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mac Power 1997 November
/
MACPOWER-1997-11.ISO.7z
/
MACPOWER-1997-11.ISO
/
AMUG
/
MUSIC
/
bol-processor-271-data.sit
/
bol-processor-271-data
/
BP2 examples
/
BP2 data
/
-da.tryCsound
< prev
next >
Wrap
Text File
|
1997-06-10
|
19KB
|
310 lines
// Bol Processor version BP2.7.1
// Data file saved as '-da.tryCsound'. Date: Mar 10 Juin 1997 -- 0:40
-cs.tryCsound
-se.tryCsound
// File ヤ-da.tryCsoundユ
// A few musical examples to check the production of Csound scores
// Here, BP2 converts data from MIDI to Csound.
// The other method is to attach bits of Csound scores to
// sound-object prototypes (see ヤ-da.checkCsoundObjectsユ)
// You will hear items on the MIDI output before they are saved as Csound scores.
// If you don't want to use MIDI, uncheck "Use MIDI in/out" on the "Settings" window,
// or check "Write item immediately".
// Since "Trace Csound" is checked, Csound scores are also displayed on the "Trace"
// window. This can be changed in the "Settings" window (top).
// We start with a simple example. Select the following item and type command-P
// (Play selection), then answer 'yes' to "Save to file?".
A4 G4 C5 A4
// We obtain the following Csound score:
t 0.000 60.000
i2 0.000 1.000 440.00 90.000 0.000 0.000 0.000 ; A4
i2 1.000 1.000 392.00 90.000 0.000 0.000 0.000 ; G4
i2 2.000 1.000 523.25 90.000 0.000 0.000 0.000 ; C5
i2 3.000 1.000 440.00 90.000 0.000 0.000 0.000 ; A4
s
// Instrument 2 has been used because it's the one assigned by default to (default) channel 1.
// This score will not play with the default orchestra file "BP2test.orc" because the latter
// contains no definition for instrument 2.
// Argument 4□ is for pitch (in Herz). To change the diapason, enter a different
// value for A4 frequency in the "Tuning" dialog (menu "Misc").
// Argument 5 is the MIDI value of the volume (default 90).
// Arguments 6 and 7 are used for the 'blub' parameter (see infra).
// Argument 8 is not used, and its value therefore remains 0.
// Instrument 2 does not use the pitchbend value as a parameter,
// but it changes the pitch parameter (in Hz) accordingly.
// Therefore, in the following example, G4 being 200 cents higher is played at the same pitch
// as A4.
_pitchrange(200) A4 _pitchbend(200) G4 _pitchbend(0) C5 A5
i2 0.000 1.000 440.00 90.000 0.000 0.000 0.000 ; A4
i2 1.000 1.000 440.00 90.000 0.000 0.000 0.000 ; G4
i2 2.000 1.000 523.25 90.000 0.000 0.000 0.000 ; C5
i2 3.000 1.000 880.00 90.000 0.000 0.000 0.000 ; A5
// Now we will force instrument to 3. Note that many new parameters are displayed.
// Default volume is 90 on MIDI scale. It is converted to 16.98 (log scale) using
// the volume mapping defined in instrument 3. Besides, since instrument 3 accepts
// pitchbend corrections, pitchbend is applied to G4 instead of changing its frequency.
_ins(3) _pitchrange(200) A4 _pitchbend(200) G4 _pitchbend(0) C5 A5
i3 0.000 1.000 440.00 8191.500 8191.500 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; A4
i3 1.000 1.000 392.00 16383.000 16383.000 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; G4
i3 2.000 1.000 523.25 8191.500 8191.500 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; C5
i3 3.000 1.000 880.00 8191.500 8191.500 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; A5
// Arguments 5 and 6 represent the start and end values of pitchbend. This will make it
// possible to instruct Csound to work out a portamento (see infra).
// Playing simple notes on channel 2 calls instrument 3, which has volume control parameters.
_chan(2) _modcont _mod(0) C4 D4_ _ E4 _mod(12431)
i3 0.000 1.000 261.63 8191.500 8191.500 16.981 16.981 0.000 0.000 0.000 607.019 0.000 ; C4
i3 1.000 3.000 293.66 8191.500 8191.500 16.981 16.981 0.000 0.000 607.019 2428.078 0.000 ; D4
i3 4.000 1.000 329.63 8191.500 8191.500 16.981 16.981 0.000 0.000 2428.078 3035.097 0.000 ; E4
// Another way of doing the same without tempering with channels is to impose instrument 3.
_ins(3) _modcont _mod(0) C4 D4_ _ E4 _mod(12431)
// Beware that instrument specification supersedes the default instrument assignment
// done on the basis of a MIDI channel. Here for instance, _chan(2) does not set the
// instrument index to 3, and consequently _mod() is ignored.
_ins(1) _chan(2) _modcont _mod(0) C4 D4_ _ E4 _mod(12431)
i1 0.000 1.000 8.00 90.000 90.000 0.000 0.000 0.000 0.000 ; C4
i1 1.000 3.000 8.02 90.000 90.000 0.000 0.000 0.000 0.000 ; D4
i1 4.000 1.000 8.04 90.000 90.000 0.000 0.000 0.000 0.000 ; E4
// A polymetric structure in which the same note (D5) has two consecutive NoteOn's.
// In MIDI, the second NoteOn is ignored. In Csound it is accepted because the same
// instrument may be invoked several times simultaneously.
// (More on this problem in メ-da.tryStrikeModeモ)
_ins(The default) {_volume(30) C5 D5 E5 F5,_volume(20) G5 D5 C6}
i1 0.000 1.000 9.00 30.000 30.000 0.000 0.000 0.000 0.000 ; C5
i1 0.000 1.333 9.07 20.000 20.000 0.000 0.000 0.000 0.000 ; G5
i1 1.000 1.000 9.02 30.000 30.000 0.000 0.000 0.000 0.000 ; D5
i1 1.333 1.333 9.02 20.000 20.000 0.000 0.000 0.000 0.000 ; D5 striked again
i1 2.000 1.000 9.04 30.000 30.000 0.000 0.000 0.000 0.000 ; E5
i1 3.000 1.000 9.05 30.000 30.000 0.000 0.000 0.000 0.000 ; F5
i1 2.666 1.334 10.00 20.000 20.000 0.000 0.000 0.000 0.000 ; C6
// Note that this example would sound strange without volume controls: we would
// get a silence during the time the two D5' are superimposed, simply because they are sine
// waves with same amplitudes and opposite phases!
// The same note played at different volumes. Note that instrument 3 is now specified by its
// name "Harpsichord". (Don't look for it in an orchestra file!)
_ins(Harpsichord) _volume(0) A4 _volume(32) A4 _volume(64) A4 _volume(80) A4_volume(127) A4
i3 0.000 1.000 440.00 8191.500 8191.500 -24.000 -24.000 0.000 0.000 0.000 0.000 0.000 ; A4
i3 1.000 1.000 440.00 8191.500 8191.500 -2.763 -2.763 0.000 0.000 0.000 0.000 0.000 ; A4
i3 2.000 1.000 440.00 8191.500 8191.500 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ; A4
i3 3.000 1.000 440.00 8191.500 8191.500 13.204 13.204 0.000 0.000 0.000 0.000 0.000 ; A4
i3 4.000 1.000 440.00 8191.500 8191.500 24.000 24.000 0.000 0.000 0.000 0.000 0.000 ; A4
// The following illustrates volume decreasing from 127 (i.e. +24 after mapping) to
// 0 (i.e. -25 after mapping). Instrument 3 has two parameters (7 and 8) taking the
// start and end volume respectively, and these values will be interpolated to
// produce a continuous change.
_ins(Harpsichord) _volumecont _volume(127) A4 _volume(0)
i3 0.000 1.000 440.00 8191.500 8191.500 24.000 -24.000 0.000 0.000 0.000 0.000 0.000 ; A4
// Similar continuous changes over several notes invoking the same instrument.
_ins(Harpsichord) _volumecont _volume(127) A4 G4 C5 A5 A4 G4 C5 A5 _volume(0)
i3 0.000 1.000 440.00 8191.500 8191.500 24.000 21.688 0.000 0.000 0.000 0.000 0.000 ; A4
i3 1.000 1.000 392.00 8191.500 8191.500 21.688 18.431 0.000 0.000 0.000 0.000 0.000 ; G4
i3 2.000 1.000 523.25 8191.500 8191.500 18.431 12.899 0.000 0.000 0.000 0.000 0.000 ; C5
i3 3.000 1.000 880.00 8191.500 8191.500 12.899 -0.031 0.000 0.000 0.000 0.000 0.000 ; A5
i3 4.000 1.000 440.00 8191.500 8191.500 -0.031 -1.179 0.000 0.000 0.000 0.000 0.000 ; A4
i3 5.000 1.000 392.00 8191.500 8191.500 -1.179 -2.794 0.000 0.000 0.000 0.000 0.000 ; G4
i3 6.000 1.000 523.25 8191.500 8191.500 -2.794 -5.547 0.000 0.000 0.000 0.000 0.000 ; C5
i3 7.000 1.000 880.00 8191.500 8191.500 -5.547 -24.000 0.000 0.000 0.000 0.000 0.000 ; A5
// The same but stepwise.
_ins(Harpsichord) _volumestep _volume(127) A4 G4 C5 A5 A4 G4 C5 A5 _volume(0)
i3 0.000 1.000 440.00 8191.500 8191.500 24.000 24.000 0.000 0.000 0.000 0.000 0.000 ; A4
i3 1.000 1.000 392.00 8191.500 8191.500 21.688 21.688 0.000 0.000 0.000 0.000 0.000 ; G4
i3 2.000 1.000 523.25 8191.500 8191.500 18.431 18.431 0.000 0.000 0.000 0.000 0.000 ; C5
i3 3.000 1.000 880.00 8191.500 8191.500 12.899 12.899 0.000 0.000 0.000 0.000 0.000 ; A5
i3 4.000 1.000 440.00 8191.500 8191.500 -0.031 -0.031 0.000 0.000 0.000 0.000 0.000 ; A4
i3 5.000 1.000 392.00 8191.500 8191.500 -1.179 -1.179 0.000 0.000 0.000 0.000 0.000 ; G4
i3 6.000 1.000 523.25 8191.500 8191.500 -2.794 -2.794 0.000 0.000 0.000 0.000 0.000 ; C5
i3 7.000 1.000 880.00 8191.500 8191.500 -5.547 -5.547 0.000 0.000 0.000 0.000 0.000 ; A5
_ins(Harpsichord) _volumecont _volume(127) A4 G4 _volume(10) C5 A5
i3 0.000 1.000 440.00 8191.500 8191.500 24.000 4.549 0.000 0.000 0.000 0.000 0.000 ; A4
i3 1.000 1.000 392.00 8191.500 8191.500 4.549 -7.372 0.000 0.000 0.000 0.000 0.000 ; G4
i3 2.000 1.000 523.25 8191.500 8191.500 -7.372 -7.372 0.000 0.000 0.000 0.000 0.000 ; C5
i3 3.000 1.000 880.00 8191.500 8191.500 -7.372 -7.372 0.000 0.000 0.000 0.000 0.000 ; A5
_ins(Harpsichord) _pitchcont _pitchbend(16383) A4 G4 C5 A5 A4 G4 C5 A5 _pitchbend(0)
i3 0.000 1.000 440.00 16383.000 14335.125 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; A4
i3 1.000 1.000 392.00 14335.125 12287.250 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; G4
i3 2.000 1.000 523.25 12287.250 10239.375 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; C5
i3 3.000 1.000 880.00 10239.375 8191.500 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; A5
i3 4.000 1.000 440.00 8191.500 6143.625 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; A4
i3 5.000 1.000 392.00 6143.625 4095.750 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; G4
i3 6.000 1.000 523.25 4095.750 2047.875 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; C5
i3 7.000 1.000 880.00 2047.875 0.000 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; A5
// Here pitchbend and volume vary simultaneously
_ins(Harpsichord) _volumecont _volume(0) _pitchcont _pitchrange(200) _pitchbend(200) A4 G4 C5 A5 A4 G4 C5 A5 _pitchbend(-200) _volume(127)
i3 0.000 1.000 440.00 16383.000 14335.125 -24.000 -5.547 0.000 0.000 0.000 0.000 0.000 ; A4
i3 1.000 1.000 392.00 14335.125 12287.250 -5.547 -2.794 0.000 0.000 0.000 0.000 0.000 ; G4
i3 2.000 1.000 523.25 12287.250 10239.375 -2.794 -1.179 0.000 0.000 0.000 0.000 0.000 ; C5
i3 3.000 1.000 880.00 10239.375 8191.500 -1.179 -0.031 0.000 0.000 0.000 0.000 0.000 ; A5
i3 4.000 1.000 440.00 8191.500 6143.625 -0.031 12.899 0.000 0.000 0.000 0.000 0.000 ; A4
i3 5.000 1.000 392.00 6143.625 4095.750 12.899 18.431 0.000 0.000 0.000 0.000 0.000 ; G4
i3 6.000 1.000 523.25 4095.750 2047.875 18.431 21.688 0.000 0.000 0.000 0.000 0.000 ; C5
i3 7.000 1.000 880.00 2047.875 0.000 21.688 24.000 0.000 0.000 0.000 0.000 0.000 ; A5
// So far we have seen instruments interpolate between a start and end value.
// Instrument 1, here called "The default", i.e. the one defined in "BP2test.orc",
// is able to vary pitchbend and volume in a more laborated way, using a function table.
// BP2 creates function tables automatically when required and when the instrument
// specification (her "-cs.tryCsound") provides slots (arguments) for entering
// function table indexes.
// Here is a simple example with pitchbend. Both notations yield the same score.
// You can play this score using the demo orchestra "BP2test.orc". (Doesn't sound great!)
_ins(The default) _pitchcont _pitchbend(0) D4__ _pitchbend(16383) E4_ _pitchbend(0)___
_ins(The default) _pitchrange(200) _pitchcont _pitchbend(-200) D4__ _pitchbend(+200) E4_ _pitchbend(-200)___
i1 0.000 3.000 8.02 90.000 90.000 0.000 -200.000 200.000 0.000 ; D4
f101 3.000 256 -7 200.000 102 -200.000 154 -200.000
i1 3.000 5.000 8.04 90.000 90.000 0.000 200.000 -200.000 101.000 ; E4
// Note that GENO7 is used. GENO8 (cubic spline interpolation) could be envisaged but it
// has the drawback of forcing the first derived to zero on the start and end
// points. GEN07 is also much faster.
// Here C4 needs a four-point table whereas D4 needs only linear interpolation
_ins(1) _pitchrange(200) _pitchbend(0) _pitchcont C4 _ _pitchbend(20)_ _ _pitchbend(165) _ _ D4 _ _ _ _pitchbend(150)
f101 0.000 256 -7 0.000 85 20.000 85 165.000 171 160.000
i1 0.000 6.000 8.00 90.000 90.000 0.000 0.000 160.000 101.000 ; C4
i1 6.000 4.000 8.02 90.000 90.000 0.000 160.000 150.000 0.000 ; D4
// Here the initial portamento on a silence '-' will only be take care of by the
// MIDI output. Csound just ignores silences.
_ins(1) _pitchrange(200) _pitchbend(0) _pitchcont - _ _ _ C4 _ _ _ _pitchbend(200) _ _ D4 _ _ _ _pitchbend(150)
f101 4.000 256 -7 100.000 170 200.000 86 183.333
i1 4.000 6.000 8.00 90.000 90.000 0.000 100.000 183.333 101.000 ; C4
i1 10.000 4.000 8.02 90.000 90.000 0.000 183.333 150.000 0.000 ; D4
_ins(1) _pitchrange(200) _pitchbend(0) _pitchcont - _ _pitchbend(20) _ _ C4 _ _ _ _pitchbend(200) _ _ D4 _ _ _ _pitchbend(150)
f101 4.000 256 -7 80.000 170 200.000 86 183.333
i1 4.000 6.000 8.00 90.000 90.000 0.000 80.000 183.333 101.000 ; C4
i1 10.000 4.000 8.02 90.000 90.000 0.000 183.333 150.000 0.000 ; D4
_ins(1) _pitchcont _pitchrange(200) _pitchbend(0) - _ _ _ C4 _ _ _ _pitchbend(200) _ _ D4 _ _ _ _pitchbend(150)
f101 4.000 256 -7 100.000 170 200.000 86 183.333
i1 4.000 6.000 8.00 90.000 90.000 0.000 100.000 183.333 101.000 ; C4
i1 10.000 4.000 8.02 90.000 90.000 0.000 183.333 150.000 0.000 ; D4
// Here the section bracketted {} follows an independant portamento
_ins(1) _pitchcont _pitchrange(200) _pitchbend(0) - _ _ _ {C4 _ _ _ _pitchbend(200) _ _} D4 _ _ _ _pitchbend(150)
f101 4.000 256 -7 42.857 170 200.000 86 200.000
i1 4.000 6.000 8.00 90.000 90.000 0.000 42.857 200.000 101.000 ; C4
i1 10.000 4.000 8.02 90.000 90.000 0.000 107.143 150.000 0.000 ; D4
// A polymetric structure. E4 keeps the initial pitchbend value of C4.
_ins(1) _pitchcont _pitchrange(200) _pitchbend(0) - _ _ _ {C4 _ _ _ _pitchbend(200) _ _,E4} D4 _ _ _ _pitchbend(150)
f101 4.000 256 -7 42.857 170 200.000 86 200.000
i1 4.000 6.000 8.00 90.000 90.000 0.000 42.857 200.000 101.000 ; C4
i1 4.000 6.000 8.04 90.000 90.000 0.000 42.857 42.857 0.000 ; E4
i1 10.000 4.000 8.02 90.000 90.000 0.000 107.143 150.000 0.000 ; D4
// Here, E4 has its own independent movement.
_ins(1) _pitchcont _pitchrange(200) _pitchbend(0) - _ _ _ {C4 _ _ _ _pitchbend(200) _ _,E4 _ _pitchbend(180) _ _pitchbend(60) _} D4 _ _ _ _pitchbend(150)
f101 4.000 256 -7 42.857 170 200.000 86 200.000
i1 4.000 6.000 8.00 90.000 90.000 0.000 42.857 200.000 101.000 ; C4
f102 4.000 256 -7 42.857 128 180.000 64 60.000 192 60.000
i1 4.000 6.000 8.04 90.000 90.000 0.000 42.857 60.000 102.000 ; E4
i1 10.000 4.000 8.02 90.000 90.000 0.000 107.143 150.000 0.000 ; D4
// Don't forget to set _pitchrange(200) on channel 2 otherwise _pitchbend(180) will be
// taken as a MIDI value (range 0..16383). Note again that channel 2 does not assign
// its default instrument 3 because instrument 1 has already been specified.
_ins(1) _pitchcont _pitchrange(200) _pitchbend(0) - _ _ _ {C4 _ _ _ _pitchbend(200) _ _,ツ
_chan(2) _pitchrange(200) E4 _ _pitchbend(180) _ _} D4 _ _ _ _pitchbend(150)
f101 4.000 256 -7 42.857 170 200.000 86 200.000
i1 4.000 6.000 8.00 90.000 90.000 0.000 42.857 200.000 101.000 ; C4
f102 4.000 256 -7 42.857 128 180.000 128 180.000
i1 4.000 6.000 8.04 90.000 90.000 0.000 42.857 180.000 102.000 ; E4
i1 10.000 4.000 8.02 90.000 90.000 0.000 107.143 150.000 0.000 ; D4
// In the above example, if you forget to set the instrument to 1, instruments will be
// assigned on the basis of MIDI channels. This yields:
_pitchcont _pitchrange(200) _pitchbend(0) - _ _ _ {C4 _ _ _ _pitchbend(200) _ _,ツ
_chan(2) _pitchrange(200) E4 _ _pitchbend(180) _ _} D4 _ _ _ _pitchbend(150)
i2 4.000 6.000 268.18 90.000 0.000 0.000 0.000 ; C4
i3 4.000 6.000 329.63 9946.821 15563.850 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; E4
i2 10.000 4.000 312.41 90.000 0.000 0.000 0.000 ; D4
// Let us now try an arbitrary parameter 'blurb' (which has no MIDI equivalent)
// defined on both instruments 'Harpsichord' and 'Flute'.
_ins(Harpsichord) _cont(blurb) _value(blurb,123.42) C4 D4 _ins(Flute) E4 F4 _value(blurb,-211) _step(blurb) G4 A4 _value(blurb,-34) _fixed(blurb) B4 C5
i3 0.000 1.000 261.63 8191.500 8191.500 16.981 16.981 123.420 39.815 0.000 0.000 0.000 ; C4
i3 1.000 1.000 293.66 8191.500 8191.500 16.981 16.981 39.815 -43.790 0.000 0.000 0.000 ; D4
i2 2.000 1.000 329.63 90.000 -43.790 -127.395 0.000 ; E4
i2 3.000 1.000 349.23 90.000 -127.395 -211.000 0.000 ; F4
i2 4.000 1.000 392.00 90.000 -211.000 -211.000 0.000 ; G4
i2 5.000 1.000 440.00 90.000 -122.500 -122.500 0.000 ; A4
i2 6.000 1.000 493.88 90.000 -34.000 -34.000 0.000 ; B4
i2 7.000 1.000 523.25 90.000 -34.000 -34.000 0.000 ; C5
// Instrument "Flute" can handle function tables for 'blurb'.
_ins(Flute) _cont(blurb) _value(blurb,544.5) C4__ _value(blurb,120) __ _value(blurb,-37)___ _value(blurb,0)
f101 0.000 256 -7 544.500 96 120.000 64 -37.000 192 0.000
i2 0.000 8.000 261.63 90.000 544.500 0.000 101.000 ; C4
// Watch out carefully: if the 'arbitrary' parameter is named 'volume' then it is
// understood as the MIDI volume, here remapped to the range -24..+24
_ins(Harpsichord) _cont(volume) _value(volume,127) A4 B4 _value(volume,0)
i3 0.000 1.000 440.00 8191.500 8191.500 24.000 -0.031 0.000 0.000 0.000 0.000 0.000 ; A4
i3 1.000 1.000 493.88 8191.500 8191.500 -0.031 -24.000 0.000 0.000 0.000 0.000 0.000 ; B4
// The same with 'pitchbend', 'pressure', 'panoramic' and 'modulation' (all case-sensitive)
// In instrument 3, modulation is remapped to the range 0..4000.
_ins(Harpsichord) _cont(modulation) _value(modulation,0) A4 B4 C5 D5 _value(modulation,16383)
i3 0.000 1.000 440.00 8191.500 8191.500 16.981 16.981 0.000 0.000 0.000 1000.000 0.000 ; A4
i3 1.000 1.000 493.88 8191.500 8191.500 16.981 16.981 0.000 0.000 1000.000 2000.000 0.000 ; B4
i3 2.000 1.000 523.25 8191.500 8191.500 16.981 16.981 0.000 0.000 2000.000 3000.000 0.000 ; C5
i3 3.000 1.000 587.33 8191.500 8191.500 16.981 16.981 0.000 0.000 3000.000 4000.000 0.000 ; D5
// Now the two combined:
_ins(Harpsichord) _cont(volume) _cont(modulation) _value(volume,127) _value(modulation,0) A4 B4 C5 D5 _value(volume,0) _value(modulation,16383)
i3 0.000 1.000 440.00 8191.500 8191.500 24.000 18.431 0.000 0.000 0.000 1000.000 0.000 ; A4
i3 1.000 1.000 493.88 8191.500 8191.500 18.431 -0.031 0.000 0.000 1000.000 2000.000 0.000 ; B4
i3 2.000 1.000 523.25 8191.500 8191.500 -0.031 -2.794 0.000 0.000 2000.000 3000.000 0.000 ; C5
i3 3.000 1.000 587.33 8191.500 8191.500 -2.794 -24.000 0.000 0.000 3000.000 4000.000 0.000 ; D5
// Note that if the arbitrary parameter is unknown to the instrument it is simply ignored.
// No warning is issued, for example:
_ins(Harpsichord) _cont(gasp) _value(gasp,0) A4 B4 _value(gasp,1000)
i3 0.000 1.000 440.00 8191.500 8191.500 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; A4
i3 1.000 1.000 493.88 8191.500 8191.500 16.981 16.981 0.000 0.000 0.000 0.000 0.000 ; B4
// Instrument 'Splashmachine' handles the 'splash' parameter which is instructed to produce
// function tables with GEN08 (cubic spline) instead of GEN07.
_ins(Splashmachine) _cont(splash) _value(splash,544.5) C4__ _value(splash,120) __ _value(splash,-37)___ _value(splash,130)
f101 0.000 256 -8 544.500 96 120.000 64 -37.000 192 130.000
i4 0.000 8.000 8.00 90.000 90.000 0.000 0.000 0.000 0.000 544.500 130.000 101.000 ; C4